yq_path=".\\yq_in.txt"
with open(yq_path,'r',encoding='UTF-8') as f:
    yq=[line.split() for line in f]                     #将文本按行处理

yq_All=[]
yq_Part=[]
for msd_id,yq_type,yq_data in yq:                       #“省份”、“城市”、“数据”
    yq_All.append([msd_id,yq_type,yq_data])             #将“省份”、“城市”、“数据”压入保存为一个二维列表
    yq_Part.append([yq_type,'\t',yq_data,'\n'])         #将“城市”、“数据”保存为一个二维列表，键入空格和换行以便写文本操作

Ylen=len(yq_All)
t=open("yq_out.txt",'w',encoding='UTF-8')                                #以写的方式打开yq_out.txt
province=yq_All[0][0]
flag=0
for i in range(0,Ylen):
    if flag==0:
        t.write(yq_All[i][0]+'\n')                      #写入一次“省份”
        flag=1
    if yq_All[i][0]==province:
        t.writelines(yq_Part[i])                        #对比“当前省份”，若相同，则将“城市”、“数据”写入文本
    else:
        province=yq_All[i][0]                           #不同则改变“当前省份”
        flag=0
        t.write('\n')                                   #每个省份统计结束后换行隔开

#由于给定文本的特殊性，可用上述处理方式